iT邦幫忙

2024 iThome 鐵人賽

DAY 14
0
Python

python零之旅系列 第 14

DAY14. Python中的函式與模組

  • 分享至 

  • xImage
  •  

列表推導式

Python 中的列表推導式(List Comprehension)是一種簡潔、有表達力的語法,用於創建列表。它讓我們可以在一行程式碼中,根據現有的序列(如列表、元組、字典等)來產生一個新的列表,並且能夠同時包含條件篩選及運算,有效地替代傳統的 for 迴圈,使我們可以用更少的語言去創建新列表,讓程式碼更簡潔易讀。

讓我們來看看以下的實作範例:

nums = [100, 99, 90, 89]
pass = [g for g in nums if g >= 95]
print(pass)

字典推導式

通常我們用字典推導式來創造字典,透過表達式,我們可以將 for 迴圈或lambda函數簡化成一行程式碼。它的語法為{key: expression for key, value in iterable},其中expression為運算之意。

接下來,讓我們來練習字典推導式吧!
範例:

#運算
f = {"LA": 120, "New York": 65, "Taiwan": 60}
c = {key: (value - 32) * 5 / 9 for key, value in f.items()}
print(f)
print(c)

#條件判斷
weather = {
    "Taipei": "sunny", "Tainan": "windy", "Taichung": "cloudy"
}

sun = {for key, value in weather.items() if value == "sunny"}

#條件判斷+函式
cities = {"LA": 120, "New York": 65, "Taiwan": 30}
def check_temp(value):
    if value >= 70:
        return "hot"
    elif value >=40:
        return "warm"
    else:
        return "cold"
        
description = {key: check_temp(value) for key, value in cities.items()}
print(description)

zip函式

Python中的 zip() 函式用於將兩個或多個可迭代物件(如列表、元組)中的對應元素組合成元組,並返回一個迭代器。它會以最短的可迭代物件長度進行組合,忽略多餘的元素。結果可以用 list() 或 tuple() 轉換為列表或元組。

以下是zip函式的應用範例:

names = ["Anna", "Betty", "Cindy"]
passwords = ["123", "456", "789"]
gender = ["f", "f", "f"]

users = zip(names, passwords, gender)
print(users)
for i in users:
    print(i)
    
print(list(users))
user_dict = dict(users)
print(user_dict)

name 與 main

Python中有一個語法為:if name == 'main',它用於判斷一個 Python 檔案是否是以主程式(主要執行的檔案)運行。

當 Python 檔案被直接執行時,變數 name 的值會被設為 'main',而當該檔案被其他檔案匯入時,name 則會是該檔案的名稱。因此,if name == 'main': 區塊中的程式碼只有在該檔案被直接執行時才會執行。

這個語法通常用於測試或防止某段程式碼在被匯入時執行,從而提高程式的模組化與可重用性。

以下是範例:

def greet():
    print("Hello, World!")

# 只有在直接執行時才會執行這段程式
if __name__ == '__main__':
    greet()

時間模組

經過前面學習了這麼多函式,我們也對於函式有了認識和一定的熟悉度,接下來,讓我們運用學習到的知識,進行模組練習!

練習:

import time
local_time = time.localtime()

#將時間格式化(日期、時間)
print("格式化時間:", time.strtime("%Y-%m-%d %H:%M:%S", time.localtime))

#字串轉成時間物件
time_str = "2000-01-01 11:11:11"
time_obj = time.strptime(time.str, "%Y-%m-%d %H:%M:%S")
print(time_obj)

pip套件工具

pip是Python中的套件管理器,它可以從Python套件索引中下載套件和模組。pip常用於安裝、升級、以及管理各種 Python 套件。

pip是「Python Package Index」(PyPI)的官方套件管理工具,能夠輕鬆從 PyPI 下載並安裝數千個可用的開源套件。pip讓我們可以快速擴充 Python 的功能,以便開發各種應用程式,例如網頁開發、資料分析、機器學習等。

我們常使用pip的基本指令如下:
1.安裝套件:pip install 套件名稱
2.升級套件:pip install --upgrade 套件名稱
3.移除套件:pip uninstall 套件名稱
4.列出已安裝的套件:pip list


以上就是Python中的基本學習,在這兩週的學習中,我重新熟悉了Python語法及其他應用,讓自己精進了程式語言部分。

接下來的兩週,我會挑戰學習Python的進階項目練習,讓自己的Python能力熟能生巧!


上一篇
DAY13. Python中的運算符與函式
下一篇
DAY15. Python環境架設
系列文
python零之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言